package com.zc.emos.wx.service;

import com.zc.emos.wx.db.pojo.TbUser;

import java.util.ArrayList;
import java.util.HashMap;
import java.util.List;
import java.util.Set;

/**
 * @author 曾川
 * @version 1.0.0
 * @ClassName UserService.java
 * @Description TODO
 * @createTime 2021年12月22日 13:23:00
 */
public interface UserService {

    /**
     * 注册用户
     * @param registerCode
     * @param code
     * @param nickname
     * @param photo
     * @return
     */
    public int registerUser(String registerCode, String code,
                            String nickname, String photo);

    /**
     * 查询用户拥有的权限
     * @param userId
     * @return
     */
    public Set<String> searchUserPermissions(int userId);

    /**
     * 根据code登录
     * @param code
     * @return
     */
    public Integer login(String code);


    /**
     * 根据id查询用户是否在职
     * @param userId
     * @return
     */
    public TbUser searchById(int userId);


    /**
     * 查询员工的入职日期
     * @param userId
     * @return
     */
    public String searchUserHiredate(int userId);


    /**
     * 查询员工个人概况
     * @param userId
     * @return
     */
    public HashMap searchUserSummary(int userId);


    /**
     * 查询员工所属部门的分组情况
     * @param keyword
     * @return
     */
    public ArrayList<HashMap> searchUserGroupByDept(String keyword);


    /**
     * 根据id list查询成员
     * @param param
     * @return
     */
    public ArrayList<HashMap> searchMembers(List param);


    List<HashMap> selectUserPhotoAndName(List param);

    String searchMemberEmail(int id);
}
